varimorph                package:unknown                R Documentation


Anlises de Componentes Principais (PCA) em diferentes nveis taxonmicos (ou outro agrupamento) e Teste de Mantel.


Description:

	A funo realiza Anlises de Componentes Principais considerando diferentes nveis de anlise ou agrupamentos definidos previamente pelo usurio. A partir 
de um data frame contendo todos os dados, a funo identifica os diferentes nveis de anlise determinados pelo usurio,  realizando a PCA e construindo grficos do 
tipo biplot para cada nvel de anlise. Alm disso, a funo tambm oferece a opo de realizar o Teste de Mantel para comparar as matrizes de correlao de diferentes 
subconjuntos dos dados originais, definidos pelo usurio.

Usage:

	varimorph (x, ngroup=1, inclusive=FALSE, scale.pca=TRUE, scaling.biplot=2, choices.biplot=c(1,2), Mantel=FALSE, nsim=1000, x.cor, y.cor, x.ncol, y.ncol)

Arguments:

		um data frame contendo os dados para as anlises. As variveis devem estar nas colunas e as observaes nas linhas. Os nveis de anlise devem estar 
	x	discriminados nas primeiras colunas da matriz de dados. Cada agrupamento  uma coluna e os fatores dessa coluna determinam os nveis do agrupamento. A
                primeira linha do data frame deve conter o nome das colunas. Veja 'Details' para mais detalhes.

      ngroup	nmero de colunas que identificam os agrupamentos no data frame. Quando inclusive=TRUE, ngroup deve ser maior que 1.
    
    inclusive 	se igual a TRUE, determina que os agrupamentos definidos pelo usurio so inclusivos, ou seja, representam nveis hierrquicos. Se inclusive=FALSE
		(default), os agrupamentos no representam nveis hierrquicos. Veja 'details' para mais detalhes. 

    scale.pca   se igual a TRUE, padroniza as variveis a partir da matriz de correlao dos dados.  importante quando as variveis no se encontram na mesma unidade
		de escala. Veja 'details' para mais detalhes.
	
   		se refere a forma como os objetos e variveis sero mostrados juntos no biplot da PCA. Se igual a 1, biplot de distncia, as distncias entre os objetos
 scaling.biplot	so aproximaes das suas distncias euclidianas no espao multidimensional e os ngulos entre os vetores no tm sentido analtico; Se igual a 2,
		biplot de correlao, as distncias entre os objetos no so aproximaes das suas distncias euclidianas no espao multidimensional e os ngulos entre
		os vetores refletem suas correlaes. Para mais detalhes, veja o argumento "scaling" em ?summary.cca (pacote vegan).

choices. biplot define os eixos do biplot, ou seja, quais componentes principais (PCs) devem ser usados para construir o biplot. O default, c(1,2), significa que o 
		biplot ser construdo com o primeiro PC no eixo x e o segundo PC no eixo y. 

    Mantel	se igual a TRUE, alm da PCA  realizado um Teste de Mantel entre as matrizes de correlao dos dados definidos pelo usurio em x.cor e y.cor.

    nsim	nmero de simulaes que ser utilizado na construo do modelo nulo para o teste de significncia da Estatstica r de Mantel.
 
  x.cor, y.cor	fatores dos agrupamentos definidos pelo usurio cujas matrizes de correlao sero comparadas pelo Teste de Mantel. Devem se referir a subconjuntos dos
		dados originais. Veja 'details' para mais detalhes.

 x.ncol, y.ncol nmeros das colunas dos fatores definidos em x.cor e y.cor.


Details:

     	A Anlise de Componentes Principais  realizada utilizando-se a funo rda do pacote vegan, por isso para executar a funo varimorph  preciso ter esse pacote
instalado. Os dados de entrada da funo devem ser do tipo data frame, e a primeira linha deve conter os nomes das colunas. Esses nomes sero utilizados para 
identificar os resultados das anlises e os biplots de cada agrupamento. Os agrupamentos definidos pelo usurio devem estar identificados nas primeiras colunas do data
frame. Cada coluna deve ser um agrupamento, e os fatores da coluna devem se referir aos nveis dos agrupamentos. Quando os agrupamentos so nveis taxonmicos (ou 
qualquer outro tipo de agrupamento que represente nveis hierrquicos), as primeiras colunas do data frame que identificam os agrupamentos devem conter, nesse ordem, 
os agrupamentos menos inclusivos at os mais inclusivos (de espcie at famlia, ou de subespcie at gnero, etc). Nesse caso, o argumento inclusive deve ser igual a 
TRUE. Quando os agrupamentos no representam nveis hierrquicos (por exemplo, agrupamento por local de ocorrncia e agrupamento por perodo de ocorrncia), eles podem
estar dispostos em qualquer ordem, desde que nas primeiras colunas do data frame. Nesse caso, o argumento inclusive deve ser igual a FALSE. Veja o arquivo "Exemplo.csv"
para um modelo do data frame. 
	Quando inclusive=TRUE, a Anlise de Componentes Principais  realizada considerando-se cada fator do agrupamento, a partir da segunda coluna de agrupamentos.
Assim, se os agrupamentos foram definidos como espcies, gneros e famlias, as anlises so feitas considerando os dados referentes s espcies do gnero 1, s 
espcies do gnero 2, e assim por diante; os gneros da famlia 1, os gneros da famlia 2, e assim por diante; e por final, as diferentes famlias. Quando inclusive=
FALSE, uma Anlise de Componentes Principais  realizada com todos os dados, e um biplot  construdo para cada agrupamento. Assim, para que a funo funcione 
corretamente,  preciso que o nmero de agrupamentos informado (ngroup) seja exatamente igual ao do data frame. Para realizar a funo com menos agrupamentos que
aqueles definidos no data frame, o usurio deve elaborar uma nova planilha de dados, retirando os agrupamentos indesejados, e criar um novo data frame para esses dados.
	Os argumentos referentes  Anlise de Componentes Principais so os mesmos da funo rda do pacote vegan, e mais detalhes sobre esses argumentos podem ser 
consultados em ?rda e ?summary.cca (como 'scale', 'scaling' e 'choices'). Jolliffe (2002, pg. 42) discute sobre o uso de matrizes de correlao ou covarincia para a
obteno dos componentes principais. Em geral, quando a matriz de covarincia  usada com variveis que se encontram em escalas diferentes (principalmente quando suas
varincias so muitos diferentes), os primeiros componentes representam basicamente as diferenas relativas nas varincias, contendo pouca informao sobre a variao
dos dados. Nesses casos, a matriz de correlao  mais indicada (scale.pca=TRUE). O arquivo "Exemplo.csv" contm um exemplo de dados em que duas variveis (V1 e V12)
apresentam varincias muito maiores que as demais variveis. Veja o que acontece com seus respectivos autovalores e autovetores quando scale.pca=FALSE (em 'Examples').
O tamanho dos vetores do biplot tambm  influenciado por essas duas variveis. Em relao ao argumento scaling.pca, veja Legendre & Legendre (1998, pg. 403) e Borcard et al. (2011,
pg.120) para mais detalhes sobre as diferenas na forma como os biplots so contrudos quando scaling.pca=1 ou 2.
	Na funo varimorph, o Teste de Mantel  utilizado para verificar se os padres de correlao das variveis muda entre os diferentes fatores dos 
agrupamentos. Para isso, o usurio deve definir pelos argumentos x.cor e y.cor quais fatores se deseja comparar. Para que o Teste de Mantel seja vlido, as variveis
utilizadas para construir a matriz X e a matriz Y devem ser geradas a partir de diferentes conjuntos de dados (veja Legendre & Legendre 1998 para mais detalhes). Por
esse motivo, x.cor e y.cor devem se referir a fatores dos agrupamentos, que determinam diferentes subconjuntos dos dados originais. Assim, para cada subconjunto dos 
dados  construda uma matriz de correlao, e essas matrizes so comparadas por meio do Teste de Mantel. O teste de significncia  construdo a partir de um modelo 
nulo, por meio de permutaes dos dados originais. 

Value:

A funo varimorph retorna os seguintes resultados:


	Resultados da PCA	objeto da classe rda, contendo os autovalores, autovetores (species scores), e componentes principais (site scores). Para mais detalhes
				veja ?cca.object, do pacote vegan. 

	 Biplots 		grficos do tipo biplot no formato tiff (15cm de altura, 15cm de dimetro e resoluo de 100 ppi). Os grficos gerados pelas anlises
				so salvos diretamente no diretrio de trabalho do usurio.

 Resultados do Teste de Mantel  quando Mantel=TRUE, alm dos resultados da PCA, a funo retorna o valor da Estatstica r de Mantel e o valor de p, obtido pelo teste
				de significncia.

Author(s):

     	Amanda Ferreira e Cunha.

References:

     	Legendre, P. & Legendre, L. 1998. Numerical Ecology. Second English Edition, Elsevier Science B.V., Amsterdam, 853p.
	Jolliffe, I.T. 2002. Principal Components Analysis. Second Edition, Springer Series in Statistics, 457p.
	Borcard, D.; Gillet, F. & Legendre, P. 2011. Numerical Ecology with R. Springer, 306p. 


See Also:

     ?rda, ?summary.cca, ?object.cca e ?plot.cca, do pacote vegan.

Examples:

     	#Para ler o arquivo de dados "Exemplo.csv"
	dados<-read.table("Exemplo.csv", header=TRUE, sep=";")

	#Carrega a funo varimorph
	source("varimorph.R")

	#Executa a PCA considerando os agrupamentos como nveis hierrquicos
	varimorph(dados, ngroup=3, inclusive=TRUE)

	#Executa a PCA (com outra forma de construo dos biplots) e o Teste de Mantel com os dados dos fatores "C.agas" e "C. tincta", da coluna 2 (Espcies)
	varimorph(dados, ngroup=3, inclusive=TRUE, scaling.biplot=1, Mantel=TRUE, x.cor="C.agas", y.cor="C.tincta", x.ncol=2, y.ncol=2)

	#Executa a PCA considerando os agrupamentos como no inclusivos e plota os biplots com o segundo e terceiro componentes principais
	varimorph(dados, ngroup=3, choices.biplot=c(2,3))

	#Executa a PCA considerando os agrupamentos como no inclusivos, plota os biplots com o primeiro e segundo componentes principais (default), e executa o Teste
	#de Mantel com os dados dos fatores "Campanularia" e "Orthopyxis", da coluna 3 (Gneros)
	varimorph(dados, ngroup=3, Mantel=TRUE, x.cor="Campanularia", y.cor="Orthopyxis", x.ncol=3, y.ncol=3)

	#No executa, ngroup deve ser igual ao nmero de agrupamentos dos dados (3, nesse caso, populaes, espcies e gneros)
	varimorph(dados, ngroup=1) #Para executar a funo com menos agrupamentos, o data frame deve ser alterado

	#Executa a PCA com os dados no padronizados (no recomendado para esses dados, j que as variveis apresentam varincias muito discrepantes)
	varimorph(dados, ngroup=3, scale.pca=FALSE)